package net.dgg.zz.credential.qualificationTransfer.dao;


import net.dgg.zz.credential.qualificationTransfer.entity.QualificationTransfer;
import net.dgg.zz.credential.qualificationTransfer.entity.QualificationTransferVo;
import net.dgg.zz.credential.qualificationTransfer.entity.ReviewRejectedVo;
import org.springframework.stereotype.Component;

import java.util.List;
import java.util.Map;

/**
 * 资质转让
 */
@Component
public interface QualificationTransferDao {
    int deleteByPrimaryKey(Long id);

    int insert(QualificationTransfer record);

    int insertSelective(QualificationTransfer record);

    QualificationTransfer selectByPrimaryKey(Long id);

    int updateByPrimaryKeySelective(QualificationTransfer record);

    int updateByPrimaryKeyWithBLOBs(QualificationTransfer record);

    int updateByPrimaryKey(QualificationTransfer record);

    /*
     * @Author zsx
     * @Date 2018-08-30 09:08:02
     * @Description 根据状态分页查询资质转让数据
     * @param params
     * @return  List<QualificationTransferVo>
     */
    List<QualificationTransferVo> queryPendingAuditWithPage(Map<String, Object> params);

    /*
     * @Author zsx
     * @Date 2018-09-19 08:09:29
     * @Description   分页查询驳回记录
     * @param params
     * @return QualificationTransferVo
     */
    List<QualificationTransferVo> queryAuditRecordWithPage(Map<String, Object> params);

    /*
     * @Author zsx
     * @Date 2018-08-30 02:08:02
     * @Description 根据id查询详情
     * @param id 资质转让id
     * @return Map<String,Object>
     */
    Map<String, Object> selectTransferDetailsById(Long id);

    /*
     * @Author zsx
     * @Date 2018-08-31 09:08:47
     * @Description 根据id查询审核级数
     * @param id 资质转让id
     * @return Integer
     */
    Integer selectReviewSeries(Long id);

    /*
     * @Author zsx
     * @Date 2018-09-03 09:09:06
     * @Description 资质转让驳回记录
     * @param params
     * @return List<ReviewRejectedVo>
     */
    List<ReviewRejectedVo> selectRejectedRecord(Map<String, Object> params);
}